part of '../repository.dart';

abstract class SigningUpFailure extends Failure {
  const SigningUpFailure();
}

class AlreadyExistingUserSigningUpFailure extends SigningUpFailure {
  const AlreadyExistingUserSigningUpFailure();
}

class EmailVerificationSigningUpFailure extends SigningUpFailure {
  const EmailVerificationSigningUpFailure({
    required this.emailVerificationCodeFound,
    this.emailVerificationCodeCorrect,
    this.emailVerificationCodeExpired,
    this.emailVerificationCodeSubmissionAttemptsOver,
  });

  final bool emailVerificationCodeFound;
  final bool? emailVerificationCodeCorrect;
  final bool? emailVerificationCodeExpired;
  final bool? emailVerificationCodeSubmissionAttemptsOver;
}

class ServerSigningUpFailure extends SigningUpFailure {
  const ServerSigningUpFailure();
}

class NetworkSigningUpFailure extends SigningUpFailure {
  const NetworkSigningUpFailure();
}
